#ifndef FAR_H_
#define FAR_H_

#include "rectype.h"
#include "recbase.h"
#include "util.h"
#include "stdffield.h"

#if _DEBUG
#include <iostream>
#endif

namespace opsrc {
    namespace stdf 	{

        class Far : public RecBase {
        public:
            Far(stdf_rec stdfrec, int reclen, std::ios::pos_type fileRecFirstBytePosition, int orderindex, endian e, char* buf);
            ~Far();

            const StdfField<unsigned int> & getStdfVersion() const;
            void setStdfVersion(StdfField<unsigned int> version);

            const StdfField<unsigned int> getCpuType() const;
            void setCpuType(StdfField<unsigned int> cputype);

            void readFields(char* buf);

        private:
            Far();
            StdfField<unsigned int>  cpu_type;
            StdfField<unsigned int>  stdf_ver;

            endian en;
            bool decodeFields;
        };


    } // stdf
} // opsrc
#endif /*FAR_H_*/
